// 1. 引入 express
const express = require("express");

// 2. 创建 app 实例
const app = express();

// 3. 给第二步中的服务 app 绑定路由
app.get("/abc", (req, res) => {
  // TODO...
  // req 是经过 express 处理了的 request 对象
  // res 是经过 express 处理了的 response 对象
  console.log("/abc");
  res.send("123123");
});

app.get("/def", (req, res) => {
  // TODO...
  console.log("/def");
  res.send("/def");
});

app.get("/xxx", (req, res) => {
  // TODO...
  console.log("/xxx");
  res.send("/xxx");
});

app.get("/yyy", (req, res) => {
  // TODO...
  console.log("get /yyy");
  res.send("get /yyy");
});

app.post("/yyy", (req, res) => {
  // TODO...
  console.log("/yyy");
  res.send("/yyy");
});

// 回调函数（处理函数）可以写多个
//  前一个如果执行了 next 就可以进入下一个
app.get(
  "/zzz",
  (req, res, next) => {
    console.log("/zzz - 1");
    res.send("123");
    next();
  },
  (req, res, next) => {
    console.log("/zzz - 2");
    // res.send("456");  // 之前已经 响应了，再响应就会报错了
    next();
  },
  (req, res, next) => {
    console.log("/zzz - 3");
  }
);

// 4. 最后，监听端口号

app.listen(3000, () => {
  console.log("服务启动成功");
});
